package cn.stylefeng.guns.modular.business.service;

import cn.stylefeng.guns.modular.business.entity.UseCollect;
import cn.stylefeng.guns.modular.business.pojo.UseCollectRequest;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * 用户收藏 服务类
 *
 * @author zhangyaowen
 * @date 2021/11/17 15:51
 */
public interface UseCollectService extends IService<UseCollect> {


    /**
     * 新增
     *
     * @param collectTitle
     * @param collectType
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     * @return
     */
    String add(String collectTitle, String collectType);

	/**
     * 删除
     *
     * @param useCollectRequest 请求参数
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     */
    void del(UseCollectRequest useCollectRequest);

	/**
     * 编辑
     *
     * @param useCollectRequest 请求参数
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     */
    void edit(UseCollectRequest useCollectRequest);

	/**
     * 查询详情
     *
     * @param useCollectRequest 请求参数
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     */
    UseCollect detail(UseCollectRequest useCollectRequest);

	/**
     * 获取列表
     *
     * @param useCollectRequest        请求参数
     * @return List<UseCollect>   返回结果
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     */
    List<UseCollect> findList(UseCollectRequest useCollectRequest);

	/**
     * 获取列表（带分页）
     *
     * @param useCollectRequest              请求参数
     * @return PageResult<UseCollect>   返回结果
     * @author zhangyaowen
     * @date 2021/11/17 15:51
     */
    PageResult<Map<String, Object>> findPage(UseCollectRequest useCollectRequest);

    /**
     * 获取收藏状态
     * @return
     */
    String findCollectType();

}